import {request }  from "../../request/index.js";

import regeneratorRuntime from '../../lib/runtime/runtime';
Page({

  /**
   * 1.页面被打开的时候 onShow
   * onShow 不同于onload 无法形参上接收options参数
   *   0.判断有没有token值，没有直接跳转授权页面，有就直接往下进行
   *   1.获取url上的参数type
   *   2.根据type去发送请求获取订单数据
   *   3.渲染页面
   * 2.点击不同的标题 重新发送请求来获取和渲染数据
   */
  data: {
    Tabs:[
      {
        id:0,
        name:"全部订单",
        isActive:true
      },
      {
        id:1,
        name:"待付款",
        isActive:false
      },
      {
        id:2,
        name:"代发货",
        isActive:false
      },
      {
        id:3,
        name:"退款/退货",
        isActive:false
      }
    ],
    getdingdan:[]
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },
  onShow(options){
    const token = wx.getStorageSync("token");
    if(!token){
      wx.navigatetO({
        url:'/pages/auth/index'
      });
      return;
    }



    // 1.获取当前的小程序的页面数组，长度最大是10页面
    let pages= getCurrentPages();
    console.log(pages)
    // 2.数组中 索引最大的页面就是当前页面
    let currentPage = pages[pages.length-1];
    console.log(currentPage.options);
    const {type} = currentPage.options;
    this.getOrders(type)
    this.changon(type-1)
  },

  //获取订单列表的方法
  async getOrders(type){
    const token = wx.getStorageSync("token");
    if(!token){
      wx.navigatetO({
        url:'/pages/auth/index'
      });
      return;
    }

    const header = {Authorization:token}
    const res = await request({url:"/my/orders/all",data:{type},header},)
    this.setData({
      getdingdan:res.orders.map(v=>({...v,create_t:(new Date(v.create_time*1000).toLocaleString())}))
    })
  },
  // 点击不同订单数据切换Tabs
  changon(index){
     // 2.修改源数组
     let {Tabs} = this.data
    
     Tabs.forEach((v,i)=>i===index?v.isActive=true:v.isActive=false);
    // 3.赋值到data中
    this.setData({
      Tabs
    })
  },

  // Tabs栏切换效果
  handtabsItemChange(e){
    // 点击获取点击标题的索引
    const {index}=e.detail
    this.changon(index)
    // 2.重新发送请求 type=1 index=0
    this.getOrders(index+1);
   },
 
})